java - 数组的toString java
全部标签 我有一个允许上传到我网站的文件扩展名列表。我用jQueryValidationplugin检查它们.如果他们选择了不受支持的扩展程序,我会显示一条错误消息。看起来像varmsg='Youmayonlyuploadfilesoftype'+allowedExt.join(',');显然,该列表看起来并不太Shiny。我希望它看起来更人类可读。有什么办法吗? 最佳答案 执行answerpostedbyalex的更简单方法是通过使用.pop()关闭最后一个元素:varniceList=function(array,join,finalJo
如何将对象数组转换为普通对象?其中数组的每一项都是一个只有一个键值对的对象,并且键名未知。我有这个constarrayOfObject=[{KEY_A:'asfas'},{KEY_B:'asas'}]letresult={}consteach=R.forEach((item)=>{constkey=R.keys(item)[0]result[key]=item[key]})returnresult但我不喜欢该解决方案,因为forEach使用全局变量result,我不确定如何避免此处的副作用。 最佳答案 Ramda为此内置了一个函数,
我有一个对象数组,比方说[{x:2,y:3},{x:5,y:4}]我调用reduce((c,n)=>c.y+n.y);就可以了。它显然会返回7。但是,如果数组包含单个对象,假设[{x:2,y:4}]相同的reduce调用将返回对象本身{x:2,y:4}。这是正常行为吗?之后我是否有义务检查结果是否为对象而不是数字? 最佳答案 是的,这是reduce的正常行为当您没有为累加器传递初始值时(您总是应该传递)。除了具有两个对象的数组之外,您的代码无法在任何数组上按预期工作。去吧arr.reduce((acc,el)=>acc+el.y,0
这个问题在这里已经有了答案:LoopthroughanarrayinJavaScript(46个答案)关闭3年前。我在Javascript中有一个数组:vararray=newarray();array[0]="apples";array[1]="oranges";array[2]="pears";在PHP中,对于给定的数组,我可以使用以下语句循环遍历数组,并分解键和值:foreach($arrayas$key=>$value){echo("Keyis$keyandValueis$value");}我如何在Javascript中执行此操作?我知道:for(xinarray){//Dos
我有一个数组['red','green','blue']我想从这个数组创建一个新的哈希,结果应该是{'red':true,'green':true,'blue':true}使用Prototype实现该目标的最佳方法是什么? 最佳答案 只需遍历数组然后创建哈希:varobj={};for(vari=0,l=colors.length;i也可以从头创建一个新的Hash对象:varhash=newHash();for(vari=0,l=colors.length;i我建议看看documentation.
我创建了一个包含一些项目的对象,其中一个包含多个对象,每个对象都包含一个数组。这是它的结构。$.myVar={cp:"",ps:{m1:["001","002","003"],m2:["002","004"]}};我的脚本不断崩溃,提示$.myVar.ps["m1"]每个都没有方法。当我进入Chrome的控制台进行调查时,我运行以下命令并获得显示的输出。$.myVar.ps["m1"]["001","002","003"]$.myVar.ps["m1"].each(function(i,p){alert(i)})TypeError:Object001,002,003hasnometho
如果我有一个daysnames数组并且我想检查例如sunday-首字母大写还是小写-在这个数组中什么是最好的做什么? 最佳答案 您也可以使用Array.indexOf:vardays=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"];functionisInArray(days,day){returndays.indexOf(day.toLowerCase())>-1;}isInArray(days,"Sunday");//trueisI
我正在使用Moment.js制作资源日历,我需要本周的一组日期。我当前函数的控制台日志正确打印出来,但是为每个日期推送的数组是错误的。varstartOfWeek=moment().startOf('week');varendOfWeek=moment().endOf('week');vardays=[];varday=startOfWeek;do{console.log(day._d);days.push(day._d);day=day.add(1,'d');}while(day返回:SunJan18201500:00:00GMT-0500(EST)schedule.js?320
这是我的数组(来自Chrome控制台):下面是代码的相关部分:console.log(hours);vardata=JSON.stringify(hours);console.log(data);在Chrome的控制台中,我从最后一行得到[]。我应该得到{'Mon':{...}...}这里是重现问题的最少JavaScript数量:vartest=[];test["11h30"]="15h00"test["18h30"]="21h30"console.log(test);console.log(JSON.stringify(test));//outputs[]我尝试了一些其他的东西,比如
我有类似的代码:vartemp=[{"y":32},{"y":60},{"y":60}];varreduced=temp.reduce(function(a,b){returna.y+b.y;});console.log(reduced);//PrintsNaN为什么打印NaN而不是152? 最佳答案 您可以使用一个起始值,然后只从数组中添加一个值。vartemp=[{"name":"Agency","y":32,"drilldown":{"name":"Agency","categories":["APPS&SI","ERS"],